package com.hnzbxy.api.biz.service;


import com.hnzbxy.api.biz.entity.Teacher;
import com.hnzbxy.api.biz.vo.TeacherVO;
import com.hnzbxy.api.system.vo.PageVO;

import java.util.List;

/**
 * 教员业务逻辑接口
 * @Author xiaoge
 * @Date 2020/3/10 11:55
 * @Version 1.0
 **/
public interface TeacherService {

    // 新增：分页+条件查询教员列表
    PageVO<TeacherVO> findTeacherList(Integer pageNum, Integer pageSize, TeacherVO teacherVO);

    // 新增：按条件查询所有教员（用于Excel导出）
    List<Teacher> findAllByCondition(TeacherVO teacherVO);

    /**
     * 获取所有教员列表
     * @return 教员实体类列表
     */
    List<Teacher> findAll();

    /**
     * 新增教员
     * @param teacherVO 教员VO
     * @return 新增后的教员实体（含自增ID）
     */
    Teacher add(TeacherVO teacherVO);

    /**
     * 删除教员
     * @param id 教员ID
     */
    void delete(Long id);

    /**
     * 获取教员详情（编辑用）
     * @param id 教员ID
     * @return 教员VO
     */
    TeacherVO edit(Long id);

    /**
     * 更新教员信息
     * @param id 教员ID
     * @param teacherVO 教员VO
     */
    void update(Long id, TeacherVO teacherVO);

}